#ifndef ANIMATION_INCLUDE
#define ANIMATION_INCLUDE

#include <SFML/Graphics/Rect.hpp>
#include <SFML/Graphics/Texture.hpp>
#include <SFML/System/Time.hpp>
#include <string>
#include <vector>

namespace me
{
    class Animation
    {
        public:
            Animation(std::string name, sf::Texture* texture);
            virtual ~Animation();

            void setTexture(sf::Texture* texture);
            void setName(std::string name);
            void addFrame(sf::IntRect frame);

            sf::Texture* getTexture();
            std::string getName();
            sf::IntRect getFrame(std::size_t n);
            std::size_t getSize();

        private:
            sf::Texture* m_texture;
            std::string m_name;
            std::vector<sf::IntRect> m_frames;

    };
}

#endif // ANIMATION_INCLUDE
